import java.util.Scanner;

/*
创建一个VIPLevel类, 在类的main方法里编写代码, 完成如下功能:

输入会员的积分数值, 根据积分数值输出会员的等级

会员等级	积分范围
会员	积分 <= 500
白银会员	500 < 积分 <= 2000
黄金会员	2000 < 积分 <= 10000
钻石会员	10000 < 积分
 */
class J1vip{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("输入积分：");
        //points
        int points = sc.nextInt();
        if(points<0){
            System.out.println("数据非法，程序结束！");
        } else if (points<=500) {
            System.out.println("会员");
        } else if (points<=2000) {
            System.out.println("白银会员");
        } else if (points<10000) {
            System.out.println("黄金会员");
        } else {
            System.out.println("钻石会员");
        }


    }
}
/*
2，降序数字
创建一个CheckNumber类, 在类的main方法里编写代码, 完成如下功能:
输入一个三位整数，判其是不是降序数. 例如:531是降序数, 百位>十位>个位
 */
class J2CheckNumber{
    public static void main(String[] args) {
        int num = 151;
        int ge = num%10;
        int shi = num/10%10;
        int bai = num/100;
        //
        if(bai>shi && shi>ge){
            System.out.println("降序");
        }else {
            System.out.println("不是降序");
        }
    }
}
/*
3，阶乘求和
求1! + 2! + 3! + 4!的和是多少。
 */
class J3Factorial{
    public static void main(String[] args) {
        //存储和
        int sum = 0;

        //控制1-4
        for (int i = 1; i <= 4; i++) {
            //存储i的阶乘
            int jiecheng = 1;
            //i的阶乘
            for (int j = 1; j <= i; j++) {
                jiecheng *= j;
            }
            sum += jiecheng;
        }

        System.out.println("sum = " + sum);
    }
}
/*
借助上个阶乘的结果，乘以现在新数字，就是当前数字的阶乘
 */
class J3Factorial2{
    public static void main(String[] args) {
        //存储和
        int sum = 0;
        //存储上个数字的阶乘
        int jiecheng = 1;
        //控制1-4
        for (int i = 1; i <= 4; i++) {
            //1  2
            jiecheng *= i;

            sum += jiecheng;
        }

        System.out.println("sum = " + sum);
    }
}
/*
4，百钱买百鸡
我国古代数学家张邱建在《算经》中出了一道“百钱买百鸡”的问题，题意是这样的：5文钱可以买一只公鸡，3文钱可以买一只母鸡，1文钱可以买3只小鸡。现在用100文钱买100只鸡，那么各
有公鸡、母鸡、小鸡多少只？请编写程序实现。
 */
class Z4chicken{
    public static void main(String[] args) {
        /*
        只买公鸡，0-20  g
        只买母鸡，0-33  j
        只买小鸡，0-100组  1组3只  z*3

        难点，临界值，效率
         */
        //公鸡
        for (int i = 0; i <= 20; i++) {
            //母鸡
            for (int j = 0; j <= 33; j++) {
                //小鸡组数
                for (int k = 0; k <= 33; k++) {
                    //只数正确 && 钱数正确
                    if(i+j+k*3==100 && i*5+j*3+k==100){
                        System.out.println("公鸡："+i+",母鸡："+j+"，小鸡："+k*3);
                    }
                }
            }
        }

    }
}
/*
质数
创建一个CheckPrimeNumber类, 在类的main方法里编写代码, 完成如下功能:

   (1) 从控制台输入一个大于1的正整数.

   (2) 计算输入的数字是不是一个质数.

   (3) 如果输入的数字是一个质数, 打印"数字xx是质数", 如果不是质数, 打印"数字xx, 不是质数".

   > 提示: 质数也叫素数, 是指在大于1的自然数中，除了1和它本身以外不再有其他因数的自然数
 */
class Z5CheckPrimeNumber{
    public static void main(String[] args) {
        int num = 47;
        //假如num是质数
        boolean isPrime = true;
        //循环走完之后，才能知道是不是质数
        /*
        47
        2,3,4,.....46,47
        //1~23    2 1.9  1.7
        2,3,4,..23 24 25 26
         */
        for (int i = 2; i < num; i++) {
            if(num%i==0){
                //进入if留痕
//                System.out.println(num+"不是质数");
                isPrime = false;
                break;
            }
        }
        //判断是不是质数
        if(isPrime) {
            System.out.println(num+"是质数");
        }else {
            System.out.println(num+"不是质数");
        }

    }
}
/*
打印菜单
创建一个ControlMenu类, 在类的main方法里编写代码, 完成如下功能:

(1)  打印菜单

学生管理系统
1.查询学生
2.添加学生
3.编辑学生
4.删除学生
5.退出

(2) 提示用户输入功能编号, 并接收用户输入的功能编号
(3) 根据功能编号打印对应菜单的名称.(例如, 1就打印"查询学生", 2就打印"添加学生",...)
(4) 将上述的(1),(2),(3)放入一个循环中, 只有用户输入5的时候才结束循环. 只要用户不输入5, 循环就不退出.
 */
class Z6menu{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // 假如不退出
        boolean isExit = false;

        while (true){
            System.out.println("===学生管理系统===");
            System.out.println("1.查询学生");
            System.out.println("2.添加学生");
            System.out.println("3.编辑学生");
            System.out.println("4.删除学生");
            System.out.println("5.退出");

            System.out.print("输入输入功能编号：");
            int menu = sc.nextInt();
            switch (menu){
                case 1:
                    System.out.println("查询学生");
                    break;
                case 2:
                    System.out.println("添加学生");
                    break;
                case 3:
                    System.out.println("编辑学生");
                    break;
                case 4:
                    System.out.println("删除学生");
                    break;
                case 5:
                    System.out.println("退出");
                    //退出
                    isExit = true;
                    break;
                default:
                    System.out.println("输入错误！");
            }
            //跳出循环
//            if(isExit==false){
//                //不退出
//            }else {
//                break;
//            }
//            if(isExit==true){
//                break;
//            }
            if(isExit)break;
        }
    }
}
/*
打印星星 *
创建一个XunHuanQianTao2类, 在类的main方法里面编写代码, 完成如下功能:

(1)通过循环嵌套打印如下图形

   *        1       1   2n-1
  ***       2       3
 *****      3       5
*******

   *        1    3   行+空格数 = 4
  ***       2    2
 *****      3    1
*******     4    0

-----
                       *
                      ***
                     *****
                    *******
                     *****
                      ***
                       *
 */
class Z7start{
    public static void main(String[] args) {
        //控制行数
        for (int i = 1; i <= 4; i++) {
            //打印空格
            for (int j = 1; j <= 4-i; j++) {
                System.out.print(" ");
            }
            //打印星星
            for (int j = 1; j <= 2*i-1; j++) {
                //i=1  1
                System.out.print("*");
            }
            System.out.println();
        }
    }
}
class Z7startInput{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("输入行数：");
        int row = sc.nextInt();
        //控制行数
        for (int i = 1; i <= row; i++) {
            //打印空格
            for (int j = 1; j <= row-i; j++) {
                System.out.print(" ");
            }
            //打印星星
            for (int j = 1; j <= 2*i-1; j++) {
                //i=1  1
                System.out.print("*");
            }
            System.out.println();
        }
    }
}